home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / lists / mint / l_0799 / 629 < prev    next >
Encoding:
Internet Message Format  |  1994-08-27  |  5.3 KB

  1. Date: Wed, 10 Nov 93 04:34:52 -0500
  2. From: "Nicholas S Castellano" <entropy@terminator.rs.itd.umich.edu>
  3. To: Stephen.Usher@earth.ox.ac.uk
  4. In-Reply-To: Stephen Usher's message of Wed, 10 Nov 1993 08:21:50 +0000 (GMT) <4368.9311100821@earth.ox.ac.uk>
  5. Subject: include file problems
  6.  
  7. >>>Much of the basic code doesn't change in the libraries... you'd be able to
  8. >>>forget about those bits of code.
  9. >>
  10. >>Unfortunately this isn't true.  I wish it were.
  11. >
  12. >Really? What about all the startup code, the GCC library stuff (all those
  13. >annoying little source files for adding subtracting etc) I'm sure it would
  14. >be a good idea to get those out of the way.
  15.  
  16. crtinit.c changed in PL39, and some of those annoying GCC files
  17. changed in PL38.  *All* of those annoying GCC files (actually every
  18. bit of assembler source in the library) will soon be converted to
  19. motorola syntax (to be translated at compile time by asmtrans).
  20. Nothing is sacred.  Getting them "out of the way" would just mean
  21. another directory to produce patches for and so on.
  22.  
  23. >>>Also... you could farm out sub-sections of the libraries to subsiduary
  24. >>>maintainers who could generate unified patches for those directories.
  25. >>
  26. >>...And then have a real headache when some change has to be
  27. >>coordinated between seven different people.  Not to mention how
  28. >>difficult it would be to get people to send patches to the correct person.
  29. >
  30. >It would have to be thought out well, but I don't see it as being as bad as
  31. >you paint it. As long as the divisions were logical and well defined you'd
  32. >merely be a librarian gluing the sections together into the complete
  33. >library and acting as a clearing house. If anything your job would be less
  34. >taxing and less time consuming, you'd have less patches to apply, merely one
  35. >from each sub-section every so often, which you'd pass onto the other groups
  36. >so they could keep their libraries up to date.
  37.  
  38. Actually, sorting through patches and applying them after deciding on
  39. correctness and desirability takes at most 10% of the time I devote to
  40. the library.
  41.  
  42. The other 90% is spent making my own changes (maybe 10%), and
  43. producing patches (at least 60%) and compiling and testing (maybe
  44. 20%).
  45.  
  46. It currently takes about 10 hours for me to produce a distribution
  47. (thankfully only about 1 hour need to be spent at the keyboard in
  48. total since I've automated most of it recently).
  49.  
  50. Splitting the library up would just make producing distributions more
  51. tedious (waiting for sub-maintainers to get in sync, checking their
  52. changes, arguing with them when I disagree, and so on.)
  53.  
  54. >>>At the moment C libraries for the Atari computers are a hotch-potch mess. We
  55. >>>need to unify them and standardise asap IMHO so code will be able to be
  56. >>>compiled using any of the compilers without hassle, at least the free-ware
  57. >>>compilers. Maybe we could get the commercial compiler producers to get in
  58. >>>line too.
  59. >>
  60. >>I agree.
  61. >
  62. >At least there's something we agree upon! :-)
  63. >
  64. >>>(By the way.... has anyone fixed scanf() yet? :-))
  65. >>
  66. >>I don't even know what's wrong with it, besides the fact that people
  67. >>say it fails some tests.  Now if I could find those tests...
  68. >
  69. >Hmm.. it's rather broken... I can hack it to pass the GNU tests but it still
  70. >screws up big time when used in conjunction with yacc generated parsers and
  71. >the like. I think we need a complete replacement, the current version is too
  72. >broken to be economically fixable. Maybe we could use the one out of the GNU
  73. >library or maybe the BSD one.
  74.  
  75. I'd rather not use the GNU one as it is not public domain.  I'd be
  76. willing to distribute the gnu version as gnu-scanf.c with a
  77. compile-switch in the Makefile to select which one you want.  But
  78. fixing the existing one is still a good idea.
  79.  
  80. >>The first four are all in the domain of the socket library, which is
  81. >>not part of the mint library.  Maybe it will be at some point, i'll
  82. >>worry about it then.
  83. >
  84. >I think it's best to take a strategic view early so you don't go down a
  85. >dangerous path which could lead to problems later.
  86.  
  87. There's nothing in the current organization that would prevent us from
  88. adding appropriate directories later on. I really don't see a problem
  89. here.
  90.  
  91. >>There is no posix/*.h.  All posix-required headers are in the main
  92. >>include directory.  What would we gain by having posix/stdio.h,
  93. >>posix/unistd.h etc.?
  94. >
  95. >There are some parts of the POSIX definition which contradicts the ANSI
  96. >definition.. this is why we may need suplimentry libraries and header files.
  97.  
  98. Most conflicts can be resolved with judicious use of the _POSIX_SOURCE
  99. and __STRICT_ANSI__ macros.  Admittedly I've been a bit sloppy about
  100. this as I don't own a copy of either standard (now you know what to
  101. buy me for Xmas).
  102.  
  103. >It all depends, of course, as to whether there will come a time when we need
  104. >a number of versions of routines, one which is the "common" version and one
  105. >which is POSIX complient. To use the POSIX version you'd include the posix
  106. >headers and link with -lposix.
  107.  
  108. I'm doing everything I can to avoid this as I'd really rather not have
  109. to deal with all the new .olb's (posix16, bposix, etc).  Of course if
  110. it becomes necessary it'll happen, but the headers can still remain
  111. unified because all posix source code is supposed to #define
  112. _POSIX_SOURCE.
  113.  
  114. cheers,
  115. entropy
  116.  
  117. --
  118. entropy -- it's not just a good idea, it's the second law.
  119. Personal mail:      entropy@gnu.ai.mit.edu
  120. MiNT library mail:  entropy@terminator.rs.itd.umich.edu
  121.  
  122.  
  123.